\section{Informations}

\subsection{Matériel à disposition}

Nous jouissons pour le projet du matériel Arduino suivant :
\begin{itemize}
\item{3 Starter Kits Arduino (carte \textit{UNO})}
\item{1 Sparkfun Inventor Kit Arduino (carte \textit{DUEMILANOVE})}
\item{4 Modules Wifi (Wifly)}
\item{4 Modules XBee / 4 Puces XBee (séparées, à combiner)}
\item{2 Modules GSM (Carte + Antenne séparées)}
\item{2 Modules GPS}
\end{itemize}

Les kits ont leur propre liste de composants inscrite au dos des boîtes.

\subsection{Aspect logiciels \& matériels}

\subsubsection{Communication}
Les cartes Arduino \textit{Uno} et \textit{Duemilanove} possèdent entre autre un microcontroller ATMega328. Ce chipset fournit une communication en série. L'EDI d'Arduino possède un terminal simplifié permettant un dialogue via ce port série. Le dialogue permet l'envoie et la réception de données textuelles entre le PC et la carte Arduino.
C'est grâce à ce port série que l'on communique avec les différents modules disponibles (GSM, Xbee, \dots), avec des primitives ultra-simplistes (\texttt{Serial.print()}, \texttt{Serial.read()}, \dots).

\subsubsection{Alimentation}
Les cartes peuvent être alimentées soit par USB, soit par une alimentation externe. Bien qu'elles peuvent admettre une alimentation externe allant de 6 à 20V, l'alimentation recommandée et optimale doit être comprise entre 7 et 12V.

\subsubsection{Mémoire}
Le chipset ATmega328 possède 32 KB (donc 0.5 KB pour le bootloader) de mémoire pour le code compilé et embarqué, 2 KB de SDRAM et 1 KB de mémoire EEPROM\footnote{Electrically-erasable programmable read-only memory : Un type de mémoire morte}.

\subsubsection{Entrées-Sorties\protect\footnote{Directement traduit et simplifié depuis : \url{http://arduino.cc/en/Main/ArduinoBoardUno}}}

Chacun des 14 pins numériques peut être utilisé comme une entrée ou sortie à l'aide des fonctions \texttt{pinMode()}, \texttt{digitalWrite()}, et \texttt{digitalRead()}.

Certains pins ont des fonctions spéciales :
\begin{itemize}
\item {Port série : 0 (RX) et 1 (TX). Utilisés pour recevoir (RX) et transmettre (TX) des données directement à travers le port série.}
\item {Interrupteurs externes : 2 et 3. Ces pins peuvent être configurés pour déclencher une interruption sur une faible valeur, un front montant/descendant ou un changement de valeur.}
\item {Les pins : 3, 5, 6, 9, 10, et 11 fournissent une sortie 8-bit.}
\item{Les pins : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) supportent une communication SPI\footnote{Serial Peripheral Interface : un bus série synchrone, maître/esclave, full duplex de communication entre micro-contrôleur et ses périphériques}.\\}
\end{itemize}

Les cartes ont 6 entrées analogiques, marquées A0 à A5. Chacune d'elle fournit 10 bits de résolution (i.e. 1024 valeurs différentes). Par défaut, leur champs de mesure va de 0 jusqu'à 5V (valeur modifiables).

Elles possèdent aussi un bouton \texttt{Reset} utilisé pour réinitialiser le chipset et redémarrer le programme embarqué.\\

\begin{figure}[!h]
\centering
\includegraphics[scale=0.9]{circuit}
\caption{Photo de la carte Arduino Duemilanove}
\end{figure}

Toute la documentation complète est disponible sur le site officiel d'Arduino (\url{http://arduino.cc/en/Main/ArduinoBoardUno} pour la parte matériel et \url{http://arduino.cc/en/Reference/HomePage} pour la partie logicielle).

